Skip to content

Conversation

@GaryJones
Copy link
Contributor

@GaryJones GaryJones commented Jan 4, 2026

Summary

Release 0.10.0 with the following changes:

PHP Compatibility: Minimum PHP version has been lowered from 8.0 to 7.4 for broader compatibility.

Fixed

  • fix(story-budget): respect ef_story_budget_taxonomy_used filter in dropdown by @GaryJones in #861
  • fix: prevent spurious "Leave site?" warning on new posts with custom statuses by @GaryJones in #860
  • fix: scope module asset loading to relevant pages only by @GaryJones in #858
  • fix: allow text selection in calendar overlay without triggering drag by @GaryJones in #857
  • fix: update post date to current time when publishing from custom status by @GaryJones in #856
  • fix: resolve calendar drag-and-drop not persisting post date changes by @GaryJones in #854
  • fix: guard against null return from get_edit_post_link() and get_permalink() by @GaryJones in #853
  • fix: prevent get_custom_statuses() from corrupting WordPress's term cache by @GaryJones in #852
  • fix: add Private option to bulk edit status dropdown by @GaryJones in #851
  • fix: resolve stale cache causing incorrect display in custom status Quick Edit by @GaryJones in #849
  • fix: add type guard to prevent PHP warning in preview link filter by @GaryJones in #834

Added

  • feat(custom-status): add status migration tool and WP-CLI commands by @GaryJones in #859
  • feat(notifications): add Post Author and Auto-subscribed badges by @GaryJones in #847
  • feat(story-budget): improve UX with Screen Options and collapsible categories by @GaryJones in #846

Changed

  • style(story-budget): refresh print stylesheet for modern WordPress by @GaryJones in #848

Maintenance

  • ci: automate WordPress.org deployment with GitHub Actions by @GaryJones in #867
  • fix: resolve all PHPCS violations for WordPress coding standards by @GaryJones in #866
  • ci: add PHP lint workflow for syntax and coding standards checks by @GaryJones in #865
  • refactor(editorial-metadata): replace unmaintained timepicker addon with native inputs by @GaryJones in #864
  • chore: remove unused VIP feature flag setting and related code by @GaryJones in #862
  • chore: rename workflow to match plugin standards by @GaryJones in #850
  • chore: migrate build system from webpack to wp-scripts by @GaryJones in #845
  • chore: simplify ESLint config after eslint-plugin-wpvip fix by @GaryJones in #844
  • ci: standardise test matrix and update readme by @GaryJones in #840
  • chore: migrate to ESLint 9 with flat config by @GaryJones in #839
  • chore: migrate dependabot reviewers to CODEOWNERS by @GaryJones in #836
  • ci: Improve CI infrastructure and expand PHP compatibility by @GaryJones in #835
  • ci: pin E2E tests to Ubuntu 22.04 for Playwright compatibility by @GaryJones in #833

ingeniumed and others added 30 commits June 26, 2024 12:31
Remove unnecessary filters for webhook notifications
Fix the nonce error when doing bulk actions
Move check for "no users will be notified" until after invalid users are removed, so that the message shown to editing user is accurate. 

See #507
Update .wp-env.json to standardize local development environment with:
- PHP 8.0 (plugin minimum)
- Latest WordPress (auto-updates)
- Query Monitor auto-installed
- Debug constants enabled
- Test environment with PHP 8.4 + WordPress trunk

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
Update minimum supported WordPress version to 6.4.

Changes:
- Plugin header: Update/add 'Requires at least: 6.4'
- README: Update minimum WP to 6.4, tested up to 6.8
- PHPCS config: Update minimum_supported_wp_version to 6.4
- Workflow: Update test matrix minimum to 6.4

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
GaryJones and others added 21 commits December 22, 2025 17:34
When creating a new post with Custom Statuses enabled, the block editor
would immediately show a "Leave site? Changes may not be saved" warning
even if the user hadn't made any changes.

This happened because the subscribe handler called editPost() to set
the default custom status, which marked the post as dirty. Now we check
if the status already matches the default before calling editPost().

Closes #690

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
…opdown

The ef_story_budget_taxonomy_used filter was correctly applied to the
postboxes (term sections) but the filter dropdown was hardcoded to use
the 'category' taxonomy.

Changes:
- Use $this->taxonomy_used instead of hardcoded 'category' check
- Pass taxonomy parameter to wp_dropdown_categories()
- Use dynamic labels from taxonomy object
- Respect taxonomy's hierarchical setting

Fixes #679

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
The VIP feature flag was added in preparation for repurposing Edit Flow
as a workflow plugin for VIP, but this plan was shelved in favour of
building vip-workflow-plugin as a new plugin. The feature flag was never
connected to any functionality.

Removed:
- `are_vip_features_enabled()` method from EF_Module class
- `vip_features` default option from settings module
- VIP features settings section and toggle from admin UI
- `settings_vip_section_description()` method
- `settings_vip_features_option()` method

Kept:
- `is_vip_site()` method (still used for analytics)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Bumps the dev-dependencies group with 10 updates:

| Package | From | To |
| --- | --- | --- |
| [@wordpress/components](https://github.com/WordPress/gutenberg/tree/HEAD/packages/components) | `30.9.0` | `31.0.0` |
| [@wordpress/data](https://github.com/WordPress/gutenberg/tree/HEAD/packages/data) | `10.36.0` | `10.37.0` |
| [@wordpress/e2e-test-utils-playwright](https://github.com/WordPress/gutenberg/tree/HEAD/packages/e2e-test-utils-playwright) | `1.36.0` | `1.37.0` |
| [@wordpress/env](https://github.com/WordPress/gutenberg/tree/HEAD/packages/env) | `10.36.0` | `10.37.0` |
| [@wordpress/i18n](https://github.com/WordPress/gutenberg/tree/HEAD/packages/i18n) | `6.9.0` | `6.10.0` |
| [@wordpress/jest-console](https://github.com/WordPress/gutenberg/tree/HEAD/packages/jest-console) | `8.36.0` | `8.37.0` |
| [@wordpress/jest-preset-default](https://github.com/WordPress/gutenberg/tree/HEAD/packages/jest-preset-default) | `12.36.0` | `12.37.0` |
| [@wordpress/plugins](https://github.com/WordPress/gutenberg/tree/HEAD/packages/plugins) | `7.36.0` | `7.37.0` |
| [@wordpress/scripts](https://github.com/WordPress/gutenberg/tree/HEAD/packages/scripts) | `31.1.0` | `31.2.0` |
| [@wordpress/url](https://github.com/WordPress/gutenberg/tree/HEAD/packages/url) | `4.36.0` | `4.37.0` |


Updates `@wordpress/components` from 30.9.0 to 31.0.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/@wordpress/[email protected]/packages/components/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/[email protected]/packages/components)

Updates `@wordpress/data` from 10.36.0 to 10.37.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/@wordpress/[email protected]/packages/data/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/[email protected]/packages/data)

Updates `@wordpress/e2e-test-utils-playwright` from 1.36.0 to 1.37.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/@wordpress/[email protected]/packages/e2e-test-utils-playwright/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/[email protected]/packages/e2e-test-utils-playwright)

Updates `@wordpress/env` from 10.36.0 to 10.37.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/@wordpress/[email protected]/packages/env/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/[email protected]/packages/env)

Updates `@wordpress/i18n` from 6.9.0 to 6.10.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/@wordpress/[email protected]/packages/i18n/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/[email protected]/packages/i18n)

Updates `@wordpress/jest-console` from 8.36.0 to 8.37.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/@wordpress/[email protected]/packages/jest-console/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/[email protected]/packages/jest-console)

Updates `@wordpress/jest-preset-default` from 12.36.0 to 12.37.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/@wordpress/[email protected]/packages/jest-preset-default/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/[email protected]/packages/jest-preset-default)

Updates `@wordpress/plugins` from 7.36.0 to 7.37.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/@wordpress/[email protected]/packages/plugins/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/[email protected]/packages/plugins)

Updates `@wordpress/scripts` from 31.1.0 to 31.2.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/@wordpress/[email protected]/packages/scripts/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/[email protected]/packages/scripts)

Updates `@wordpress/url` from 4.36.0 to 4.37.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/@wordpress/[email protected]/packages/url/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/[email protected]/packages/url)

---
updated-dependencies:
- dependency-name: "@wordpress/components"
  dependency-version: 31.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: dev-dependencies
- dependency-name: "@wordpress/data"
  dependency-version: 10.37.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@wordpress/e2e-test-utils-playwright"
  dependency-version: 1.37.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@wordpress/env"
  dependency-version: 10.37.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@wordpress/i18n"
  dependency-version: 6.10.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@wordpress/jest-console"
  dependency-version: 8.37.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@wordpress/jest-preset-default"
  dependency-version: 12.37.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@wordpress/plugins"
  dependency-version: 7.37.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@wordpress/scripts"
  dependency-version: 31.2.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@wordpress/url"
  dependency-version: 4.37.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <[email protected]>
…ith native inputs

Remove the jquery-ui-timepicker-addon library (~1900 lines) which is no longer
maintained, replacing it with WordPress core jQuery UI Datepicker combined with
HTML5 native time inputs.

Key changes:
- Date fields now use separate date picker + time input instead of combined widget
- Added REST API support via register_post_meta() for Gutenberg compatibility
- JavaScript syncs field changes to Gutenberg data store for proper saving
- Calendar inline editing uses HTML5 datetime-local input

Existing stored data is fully backwards compatible - dates are still stored as
Unix timestamps and no migration is required.

Closes #660

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Add a new GitHub Actions workflow that runs:
- PHP syntax linting via parallel-lint (blocks on errors)
- PHPCS coding standards check (non-blocking, reports only)

The PHPCS step uses continue-on-error since there are existing violations
to address. This provides visibility into code quality issues in PRs without
blocking merges.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Address all errors and warnings from `composer cs` to enable strict
enforcement in CI. The php-lint workflow now fails on coding standards
violations instead of using continue-on-error.

Changes include:
- Add phpcs:ignore comments for legitimate exceptions (nonce verification
  on public ICS feeds with secret key validation, input sanitization
  handled by dedicated sanitize_filter() methods, legacy method names)
- Replace strip_tags() with wp_strip_all_tags() per WordPress standards
- Add missing 'edit-flow' text domains for i18n functions
- Add doc comments for class member variables
- Fix inline comment formatting (periods at end)
- Use phpcs:disable/enable blocks for form sections with proper escaping

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Replace manual SVN deployment with an automated GitHub Actions workflow
that triggers on GitHub Releases. The new workflow builds assets, deploys
to WordPress.org SVN, and attaches a distribution zip to the release.

Key changes:
- Add deploy.yml workflow using 10up/action-wordpress-plugin-deploy
- Security harden all workflows (SHA-pinned actions, minimal permissions)
- Move screenshots and icon to .wordpress-org/ for 10up action compatibility
- Expand .distignore to exclude all development files from distribution
- Remove legacy deployment tooling (.svnignore, bin/prepare-svn-release.sh)
- Remove orphaned build artifacts (dist/, modules/calendar/lib/dist/)
- Update PUBLISHING.md to document the automated workflow

The dist/ directories contained legacy build output from before the build
was centralised to /build/ via wp-scripts. The PHP already loads from
build/, so these files were unused.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Bumps [qs](https://github.com/ljharb/qs) from 6.14.0 to 6.14.1.
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md)
- [Commits](ljharb/qs@v6.14.0...v6.14.1)

---
updated-dependencies:
- dependency-name: qs
  dependency-version: 6.14.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
@GaryJones GaryJones self-assigned this Jan 4, 2026
@GaryJones GaryJones added the type: release Release-related tasks label Jan 4, 2026
@GaryJones GaryJones marked this pull request as draft January 4, 2026 16:26
@GaryJones GaryJones added this to the 0.10.0 milestone Jan 4, 2026
@GaryJones GaryJones marked this pull request as ready for review January 6, 2026 11:34
@GaryJones GaryJones merged commit 23b8196 into main Jan 6, 2026
10 checks passed
@GaryJones GaryJones deleted the release/0.10.0 branch January 6, 2026 11:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type: release Release-related tasks

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants